package org.yujuan.springbootlearning.model;

import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;

import java.io.Serializable;
import java.util.Date;

/**
  
*/
@Builder
@Data
@NoArgsConstructor
@AllArgsConstructor
@TableName("task")
public class Task implements Serializable {

	private static final long serialVersionUID = 1L;


	private Long id;

	private String name;

	private String description;
	
	private String code;

    private String src;

	private Long priority;

	private String signature;

	private String certificate;

    private Long createBy;

    private Date createTime;

    private Long updateBy;

	private Date updateTime;

	private Integer taskType;

	private Integer needSign;

	private Boolean plainTask;

	private String plainEngine;

	private String param;

	private String taskEnv;

	private String backend;

	private String taskEntrypoint;

	private String taskDeps;

	private String debugDestId;

	private Boolean autoPull;

	private Boolean stream;

	private Integer evidence;

	/**
	 * 指定的ES Regions
	 */
	//private String desiredRegions;

	/**
	 * 初始余量
	 */
	private Integer originalQuota;

	/**
	 * 当前余量
	 */
	private Integer currentQuota;

	/**
	 * 是否为预启动任务
	 */
	private Boolean preStart;

	/**
	 * ES分配规则
	 */
	private String esAssignRule;

	/**
	 * debug任务最大等待时间
	 */
	private Long debugMaxWaitTime;

	private Integer taskStatus;

	private String taskStatusInfo;

	private Integer sucCount;

	private Integer errCount;

	/**
	 * 当前执行的requestId
	 */
	private String requestId;

	/**
	 * 当前执行的requestId状态
	 */
	private Integer requestStatus;

	/**
	 * 是否需要verify，true需要，false不需要，默认为true。 如不指定该字段，请使用java Boolean类型
	 */
	private Boolean verify;

	/**
	 * 指定的所有ds推送模式，默认为任务涉及ds全部使用轮询模式即单播
	 */
	private String dsAssignRule;

	/**
	 * 各个角色执行code的集合
	 */
	private String roleCode;

	/**
	 * fs是否执行代码
	 */
	private Boolean fsCodeRunnable;

	/**
	 * verify信息
	 */
	private String info;

}